Sieve is a server-side mail
filtering language. In Gnus you can use the sieve
group parameter (see Group Parameters) to
specify sieve rules that should apply to each group. Gnus
provides two commands to translate all these group parameters
into a proper Sieve script that can be transfered to the server
somehow.
The generated
Sieve script is placed in gnus-sieve-file (by
default ~/.sieve). The
Sieve code that Gnus generate is placed between two delimiters,
gnus-sieve-region-start and
gnus-sieve-region-end, so you may write additional
Sieve code outside these delimiters that will not be removed the
next time you regenerate the Sieve script.
The variable
gnus-sieve-crosspost controls how the Sieve script
is generated. If it is non-nil (the default)
articles is placed in all groups that have matching rules,
otherwise the article is only placed in the group with the first
matching rule. For example, the group parameter
‘(sieve address "sender"
"owner-ding@hpc.uh.edu")’ will generate the
following piece of Sieve code if
gnus-sieve-crosspost is nil. (When
gnus-sieve-crosspost is non-nil, it
looks the same except that the line containing the call to
stop is removed.)
if address "sender" "owner-ding@hpc.uh.edu" {
fileinto "INBOX.ding";
stop;
}
See Emacs Sieve.
sieve group parameters and put you
into the gnus-sieve-file without saving
it.gnus-sieve-file using the
sieve group parameters, save the file and upload
it to the server using the sieveshell
program.